This invention relates to a semiconductor memory device for use in a processor system and, more particularly, to a semiconductor random access memory which may be accessed in accordance with the same format that the processor system normally uses when connected to a magnetic disc storage device, such as a floppy-disc store.
In a typical processor system, such as a microcomputer system, a central processing unit (CPU) is coupled to a read only memory (ROM) in which the controlling program, or software, is stored, and also to a random access memory (RAM) in which incoming and outgoing data signals, as well as other processed signals, are stored; and the processor system also is coupled to other peripheral devices. Incoming data from some of the peripheral devices are supplied to the processor system by means of an input/output (I/O) interface. Such data, which passes through the I/O interface, may be written directly into suitably accessed storage locations of the RAM under the control of the CPU, or may be processed before being stored. Processed data that is stored in the RAM subsequently may be supplied to the I/O interface, either through or under control of the CPU, and thence from the I/O interface to the appropriate peripheral device. The reception of data from the I/O interface, the writing of data into the RAM, the reading, or fetching, of data from the RAM, and the transmission of data through the I/O interface to the peripheral devices all may be controlled by the appropriate program that is stored in the ROM.
A typical CPU which may be used in processor systems of the aforenoted general type are microprocessors. Typically, an 8-bit microprocessor is provided with a 16-bit address bus, thus permitting the microprocessor to select 2.sup.16 separate address locations. In present-day nomenclature, a 16-bit address thus permits the microprocessor to be used with a memory device having 64K addressable locations. If each location is capable of storing a byte of information, the typical 8-bit microprocessor, such as the Zilog Model Z80, may be coupled to a memory device capable of storing 64K bytes. In view of the capability of most microprocessors, such a memory capacity tends to limit the "power", or data storage capacity of a typical 8-bit microprocessor. Because of this constraint, the processor system cannot handle a large quantity of data.
In view of this restriction on the power of a processor system, various techniques have been proposed by which the memory capacity of the processor system can be enlarged. In one technique, the memory device is formed of a "bank" of solid-state storage devices, such as a bank of RAMs. Individual ones, or sets, of the bank of RAMs are accessed for data write-in and read-out operations under the control of the microprocessor program. However, when a typical microprocessor, such as the aforementioned Zilog Model Z80, is used with a memory bank of the aforementioned type, special software must be designed by which a microprocessor is particularly programmed so as to function compatibly with the memory bank. For example, a special sub-program by which the memory bank addresses may be selected must be provided. In addition, the interconnections, or hardware wiring connections, must be specially "tailored" for the particular microprocessor with which the memory bank is used. Thus, when a processor system uses a memory bank to enlarge its memory capacity, the specific software and re-wiring thereof adds substantially to the expense of the overall system.
Another technique which has been used for enlarging the memory capacity of a processor system of the aforenoted type is the addition of a magnetic disc system. A typical magnetic disc device which now enjoys widespread use is the so-called floppy-disc store. In a typical floppy disc, having an 8-inch diameter, 77 separate circumferential tracks are provided, each track being divided into 26 adjacent sectors. Typically, each sector is capable of storing 128 bytes of data. Hence, the memory capacity of a typical 8-inch floppy disc is on the order of 250K bytes.
The use of floppy discs to enlarge the memory capacity of a processor system has resulted in "standard" programs, or software, for the various microprocessors used in such systems, by which a floppy disc controller (FDC) is specially controlled to access sectors and tracks in which data is stored and read. In general, the floppy disc controller is connected between the floppy disc and an I/O interface. Data thus may be stored on the floppy disc directly from the I/O interface, or this data may be supplied to the floppy disc for storage therein from the I/O interface through the CPU. Data then may be transmitted to the I/O interface from the floppy disc through substantially similar paths.
Most microprocessors that are programed for use with floppy disc stores generate a disc enable command which is transmitted to the floppy disc controller by way of the usual address bus of the processor system. This signal enables the floppy disc controller to access the floppy disc itself, whereby data may be written into or read from the disc. In addition to the disc enable command, track and sector address signals are supplied by the CPU to the floppy disc controller. These signals usually are transmitted on the 8-bit data bus of the processor system. Such address signals are used by the floppy disc controller to select, or access, the appropriate track and sector therein, whereby 128 bytes of data may be written into or read from the addressed sector. As also is typical in a processor system that is used with a floppy disc store, the CPU transmits a read/write control signal over the control bus that normally is provided in the system.
When the appropriate sector is addressed, the magnetic head of the floppy disc system is driven to the addressed track and, when the addressed sector rotates adjacent the head, data is written onto or read from that sector, depending upon the read/write command signal.
Although floppy disc systems of the aforementioned type are advantageous in that a relatively large amount of data may be stored relatively easily, and the software needed to control and access the floppy disc is not overly complicated, the fact that the floppy disc system requires mechanical elements to access, read and write data results in an inherent limitation on the speed at which desired storage locations may be addressed and data may be stored therein or read therefrom. Consequently, the overall access time, which is dependent primarily on the mechanical delays of a floppy disc system, is relatively large; especially when this access time is compared to the overall access time of a typical semiconductor RAM.
One purpose of the present invention is to utilize a semiconductor RAM to function as a "quasi-floppy disc". Because of advances which have been made in semiconductor manufacturing technology, the cost of a semiconductor memory device has been substantially reduced; and it is anticipated that the costs of semiconductor RAMs will continue to decrease in the future. This is particularly true of dynamic RAM devices, so that a semiconductor RAM system can be constructed of plural dynamic RAM sections.